-- @Author: 作者QQ201878826
-- @Date:   2022-04-30 21:17:30
-- @Last Modified by:   作者QQ201878826
-- @Last Modified time: 2022-05-02 10:08:21
local 烧烤派对 = class()
function 烧烤派对:初始化()


self.临时id5 = 0

end

function 烧烤派对:开启烧烤派对()
    --广播消息( "#xt/#R/烧烤派对#G/坐标长安城(235，118)即将开启,奖励丰厚哦，请各位侠士踊跃参加！")
    发送游戏公告( "#G/烧烤派对活动已开启#R/ 坐标长安城(235，118) #G/请各位侠士踊跃参加！")
	广播消息( "#xt/#y/烧烤派对已开启。")
	    self.临时id5 = 任务控制类:生成任务id()
	 
	 			self.地图编号1 = 1001
	 			self.地图名称1 = "长安城"
	 			任务数据[self.临时id5] = {
	 				类型 = "烧烤派对",
	 				名称 = "烧烤派对",
	 				结束 = 2150,
	 				当前 = 0,
	 				数字id = 0,
	 				上次 = 0,
	 				造型 = "烧烤炉",
	 				等级 = 150,
	 				id = id,
	 				起始 = os.time(),
					第一次 = {[1]=os.time()+180,[2]=os.time()+600},
					第二次 = {[1]=os.time()+780,[2]=os.time()+1200},
					第三次 = {[1]=os.time()+1380,[2]=os.time()+1800},
	 				任务id = self.临时id5,
	 				地图编号 = self.地图编号1,
	 				地图名称 = self.地图名称1,
	 				方向 = 0,
	 				坐标 = {x=229,y=117},
	 			}
               
	 	 地图处理类:添加单位(任务数据[self.临时id5])
		 
end


function 烧烤派对:刷出野凤凰(标识)
   
    
	广播消息( "#xt/#R/(烧烤派对)#G/一群#R/野凤凰#G/前来抢食,请各位玩家齐心协力将其赶跑！")
	
	for n = 1,6  do
	    self.临时id6 = 任务控制类:生成任务id()
	 			self.地图编号1 = 1001
	 			self.地图名称1 = "长安城"
	 			任务数据[self.临时id6] = {
	 				类型 = "野凤凰",
	 				名称 = "抢食的野凤凰",
	 				结束 = 90,
	 				当前 = 0,
	 				数字id = 0,
	 				上次 = 0,
	 				造型 = "凤凰",
	 				等级 = 150,
					分类=标识,
					进度= 6,
	 				id = id,
	 				起始 = os.time(),
	 				任务id = self.临时id6,
	 				地图编号 = self.地图编号1,
	 				地图名称 = self.地图名称1,
	 				方向 = math.random( 4) - 1,
	 				坐标 = {x=math.random(211,247),y=math.random(106,125)},
	 			}
               
	 	 地图处理类:添加单位(任务数据[self.临时id6])
    end 
	
        for n,v in pairs(烧烤数据) do
            if 玩家数据[n] ~= nil  and  烧烤数据[n].烧烤阶段 ~= 0 and 烧烤数据[n].加肉~="未加肉"  and 烧烤数据[n].加料~="未加料"  then
               烧烤数据[n].野凤凰 = false
			   烧烤数据[n].野凤凰奖励 = false		
			    if 烧烤数据[n].点数 == nil  then 
				  烧烤数据[n].点数 = 0
				end
			   烧烤数据[n].点数 = 0
			    发送数据(玩家数据[n].连接id, 200722, "打开骰子界面")
			    发送数据(玩家数据[n].连接id, 200711, self:刷新全体骰子排行())
            end     
	     end
end


function 烧烤派对:触发摇色子(id)	 





 

end




function 烧烤派对:结束烧烤派对()
       
	
		地图处理类:移除单位(1001, self.临时id5)
		任务数据[self.临时id5] = nil   
	    self.临时id5 = 0
		烧烤数据 = {}
	  
end




function 烧烤派对:刷新烧烤提示()

   if self.临时id5 ~=0  and  self:取烧烤阶段() ==0  then
          烧烤派对开关 = false
          结束提醒 = false
          self:结束烧烤派对()
          广播消息( "#xt/#y/烧烤派对已结束。")
          发送游戏公告( "#G/烧烤派对已结束。")		  
      elseif   self.临时id5 ~=0  and  self:取烧烤阶段() ==1  and  os.time()+80 > 任务数据[self.临时id5].第一次[1]+0 then
         发送游戏公告( "#G/第一轮准备时间即将结束,过期加入食材将影响烤肉品质！")
         广播消息( "#xt/#y/第一轮烧烤时间即将开始")
		 
       elseif   self.临时id5 ~=0  and  self:取烧烤阶段() ==3   and  os.time()+80 > 任务数据[self.临时id5].第二次[1]+0 then
         发送游戏公告( "#G/第二轮轮准备时间即将结束,过期加入食材将影响烤肉品质！")
         广播消息( "#xt/#y/第二轮烧烤时间即将开始")
	 
      elseif   self.临时id5 ~=0  and  self:取烧烤阶段() ==5   and  os.time()+80 > 任务数据[self.临时id5].第三次[1]+0 then
         发送游戏公告( "#G/第三轮轮准备时间即将结束,过期加入食材将影响烤肉品质！")
         广播消息( "#xt/#y/第三轮烧烤时间即将开始")
		 
      elseif 结束提醒==false  and  self.临时id5 ~=0  and  self:取烧烤阶段() ==7  then
	  
          结束提醒 = true
         发送游戏公告( "#G/烧烤派对5分钟后活动结束，请玩家们尽快取出烧烤的食物，过期将失效")
         广播消息( "#xt/#y/烧烤派对5分钟后活动结束，请玩家们尽快取出烧烤的食物，过期将失效")
		 
      end
	  
	 if 烧烤派对开关  and (self:取烧烤阶段() == 2  or self:取烧烤阶段() == 4 or self:取烧烤阶段() == 6) then 
         发送游戏公告( "#G/一阵微风带着空气的清新吹过篝火,周围的玩家闻着香气获得了全体奖励,烤肉品质获得了提升")
         广播消息( "#xt/#y/一阵微风带着空气的清新吹过篝火,周围的玩家闻着香气获得了全体奖励,烤肉品质获得了提升")
	 
	    for n,v in pairs(烧烤数据) do
            if 玩家数据[n] ~= nil  and  烧烤数据[n].烧烤阶段 ~= 0 and 烧烤数据[n].加肉~="未加肉"  and 烧烤数据[n].加料~="未加料"  then
			
			 if self:取火堆旁(玩家数据[n].地图,{x=玩家数据[n].角色.地图数据.x/20,y=玩家数据[n].角色.地图数据.y/20}) then
               self:烧烤奖励(玩家数据[n],4)
			   if 烧烤数据[n].品质 <7  then 
			     烧烤数据[n].品质 = 烧烤数据[n].品质 +1
				 发送数据(玩家数据[n].连接id, 7, "#y/你的烤肉品质获得提升。")
			   end
			   else
               发送数据(玩家数据[n].连接id, 9, "#xt/#w/距离篝火太远,无法获得全体奖励")			   
			  end  
            end
        end
     end		 
end


function 烧烤派对:取火堆旁(地图,坐标)
       if 地图 ==1001 and 取两点距离({x=224,y=114},坐标)<50 then
          return true
       end
    return false
end


function 烧烤派对:刷新全体骰子排行(奖励)


       local 发送信息 = {}
	   local 名单 = {}
	 
	    for b, v in pairs(烧烤数据) do
	      if 玩家数据[b] ~= nil  and  烧烤数据[b].烧烤阶段 ~= 0 and 烧烤数据[b].加肉~="未加肉"  and 烧烤数据[b].加料~="未加料"  and 烧烤数据[b].点数~=nil  then
            名单[#名单+1] = v
			名单[#名单].id = b
			名单[#名单].名称 = 玩家数据[b].角色.名称
		  end
        end
		
       table.sort(名单,function(a,b) return a.点数 > b.点数 end )
	   --table.print(名单)
	   
	  --print("-------------------------------")
	      for i=1,5 do
	         if 名单[i] ~= nil then
               发送信息[i]= {名称=名单[i].名称,点数=名单[i].点数,id=名单[i].id} 
           end
          end
		  --table.print(发送信息)
		  if 奖励 == 1 then 
		     if 发送信息[1]~=nil and 玩家数据[发送信息[1].id]~= nil and 烧烤数据[发送信息[1].id].野凤凰奖励 == false	 then
               烧烤数据[发送信息[1].id].野凤凰奖励 = true
			  道具处理类:给予道具(发送信息[1].id, "摸金符")
               广播消息( "#xt/#g/玩家#R/"..玩家数据[发送信息[1].id].角色.名称.."#G/赶走饥饿的凤凰时,获得了点数第一名,奖励#r/摸金符*1")
			 end
			 if 发送信息[2]~=nil and  玩家数据[发送信息[2].id]~= nil  and 烧烤数据[发送信息[2].id].野凤凰奖励 == false	 then 
			 烧烤数据[发送信息[2].id].野凤凰奖励 = true
			   local 随机肉 ={"烧烤牛肉","烧烤羊肉","烧烤猪肉","烧烤鸭肉"}
			   local 烤肉 = 随机肉[ math.random(#随机肉)]
			  道具处理类:给予道具(发送信息[2].id, 烤肉)
               广播消息( "#xt/#g/玩家#R/"..玩家数据[发送信息[2].id].角色.名称.."#G/赶走饥饿的凤凰时,获得了点数第二名,奖励#r/"..烤肉)
			 end
			 if 发送信息[3]~=nil and  玩家数据[发送信息[3].id]~= nil  and 烧烤数据[发送信息[3].id].野凤凰奖励 == false	 then 
			 烧烤数据[发送信息[3].id].野凤凰奖励 = true
			    角色处理类:添加仙玉(玩家数据[发送信息[3].id],5000,"野凤凰")
               广播消息( "#xt/#g/玩家#R/"..玩家数据[发送信息[3].id].角色.名称.."#G/赶走饥饿的凤凰时,获得了点数第三名,奖励#r/仙玉*5000")
			 end
            if 发送信息[4]~=nil and  玩家数据[发送信息[4].id]~= nil  and 烧烤数据[发送信息[4].id].野凤凰奖励 == false	 then 
			烧烤数据[发送信息[4].id].野凤凰奖励 = true
			   角色处理类:添加银子(玩家数据[发送信息[4].id],10000000,"野凤凰")
               广播消息( "#xt/#g/玩家#R/"..玩家数据[发送信息[4].id].角色.名称.."#G/赶走饥饿的凤凰时,获得了点数第四名,奖励#r/银子*1000W")
			 end
			 if 发送信息[5]~=nil and  玩家数据[发送信息[5].id]~= nil  and 烧烤数据[发送信息[5].id].野凤凰奖励 == false	 then
			 烧烤数据[发送信息[5].id].野凤凰奖励 = true
                local 兽诀名称 = 取高级兽诀名称()
               道具处理类:给予道具(发送信息[5].id,"高级魔兽要诀",nil,兽诀名称)
               广播消息( "#xt/#g/玩家#R/"..玩家数据[发送信息[5].id].角色.名称.."#G/赶走饥饿的凤凰时,获得了点数第五名,奖励高级魔兽要诀#r/"..兽诀名称)
			 end
		  end
		  
		  
    return 发送信息
end




function 烧烤派对:刷新骰子排行(id,点数,奖励)
      local 是否奖励 = 0
	  
	  if 奖励  then 
	    是否奖励 = 奖励
	  end

   if  烧烤数据[id] and 烧烤派对开关  then  
       if 烧烤数据[id].点数== nil  then 
	     烧烤数据[id].点数 = 0
	   end
      烧烤数据[id].点数  = 点数	  
	  
       发送数据(玩家数据[id].连接id, 200711, self:刷新全体骰子排行(是否奖励))
	  else 
	  发送数据(玩家数据[id].连接id, 7, "#w/活动已结束")			
	end 	  
end


function 烧烤派对:刷新烧烤提示1()

  if self.临时id5 ~=0  then
      if os.time() == 任务数据[self.临时id5].第一次[2]  then 
	      发送游戏公告( "#g/第一轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")
         广播消息( "#xt/#y/#g/第一轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")
      elseif os.time() == 任务数据[self.临时id5].第二次[2]  then
	   发送游戏公告( "#g/第二轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")
         广播消息( "#xt/#y/#g/第二轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")
	  
      elseif os.time() == 任务数据[self.临时id5].第三次[2]  then 

	     发送游戏公告( "#g/第三轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")
         广播消息( "#xt/#y/#g/第三轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")
		 
	  elseif os.time() == 任务数据[self.临时id5].第一次[1]+30  then 
	      self:刷出野凤凰(1)
	  elseif os.time() == 任务数据[self.临时id5].第一次[1]+160  then 
	      self:刷出野凤凰(2)
	  elseif os.time() == 任务数据[self.临时id5].第一次[1]+290  then 
	      self:刷出野凤凰(3)
	elseif os.time() == 任务数据[self.临时id5].第二次[1]+30  then 
	      self:刷出野凤凰(1)
	  elseif os.time() == 任务数据[self.临时id5].第二次[1]+160  then 
	      self:刷出野凤凰(2)
	  elseif os.time() == 任务数据[self.临时id5].第二次[1]+290  then 
	      self:刷出野凤凰(3)
	elseif os.time() == 任务数据[self.临时id5].第三次[1]+30  then 
	      self:刷出野凤凰(1)
	  elseif os.time() == 任务数据[self.临时id5].第三次[1]+160  then 
	      self:刷出野凤凰(2)
	  elseif os.time() == 任务数据[self.临时id5].第三次[1]+290  then 
	      self:刷出野凤凰(3)
      -- elseif os.time() == 任务数据[self.临时id5].第二次[1]+30  then
	    -- 发送游戏公告( "#g/第二轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")
         -- 广播消息( "#xt/#y/#g/第二轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")
	  
      -- elseif os.time() == 任务数据[self.临时id5].第三次[1]+30  then 

	     -- 发送游戏公告( "#g/第三轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")
         -- 广播消息( "#xt/#y/#g/第三轮烧烤已结束,请玩家点击篝火取出#r/烧烤的食物")	 

      end
	  
	  if ((os.time()> 任务数据[self.临时id5].第一次[1]+30  and  os.time()< 任务数据[self.临时id5].第一次[1]+120) 
	  
	  or (os.time()> 任务数据[self.临时id5].第一次[1]+160  and  os.time()< 任务数据[self.临时id5].第一次[1]+250) 
	  
	  or (os.time()> 任务数据[self.临时id5].第一次[1]+290  and  os.time()< 任务数据[self.临时id5].第一次[1]+380)
	  
	  or (os.time()> 任务数据[self.临时id5].第二次[1]+60  and  os.time()< 任务数据[self.临时id5].第二次[1]+120)
	  
	  or (os.time()> 任务数据[self.临时id5].第二次[1]+160  and  os.time()< 任务数据[self.临时id5].第二次[1]+250)
	  
	  or (os.time()> 任务数据[self.临时id5].第二次[1]+290  and  os.time()< 任务数据[self.临时id5].第二次[1]+380)
	  
	  or (os.time()> 任务数据[self.临时id5].第三次[1]+60  and  os.time()< 任务数据[self.临时id5].第三次[1]+120)
	  
	  or (os.time()> 任务数据[self.临时id5].第三次[1]+160  and  os.time()< 任务数据[self.临时id5].第三次[1]+250)
	  
	  or (os.time()> 任务数据[self.临时id5].第三次[1]+290  and  os.time()< 任务数据[self.临时id5].第三次[1]+380)) 
	  
	  
	  and os.time()/5 == math.floor(os.time()/5) then 
	  
	              for b,a in pairs(烧烤数据) do
                   if 玩家数据[b] ~= nil and 烧烤数据[b].加肉~="未加肉"  and 烧烤数据[b].加料~="未加料"  then  
			           if 烧烤数据[b].点数 == nil  then 
				          烧烤数据[b].点数 = 0
				        end
			         self:刷新骰子排行(b,烧烤数据[b].点数)
			        end 
			      end 
	  end
	  
	  
	  
	  
  end
end



function 烧烤派对:刷新烧烤数据(id,阶段)

       
		  if 烧烤数据[id]==nil then 
		   烧烤数据[id] = {
			 加肉 = "未加肉",
			 加料 = "未加料",
			 牛肉数量 = 0,
			 羊肉数量 = 0,
			 猪肉数量 = 0,
			 鸭肉数量 = 0,
		     美味调料数量 =  0,
			 普通调料数量 =  0,
			 烧烤阶段 = 0,
             品质 = 0,	
             野凤凰 == false,
             野凤凰奖励 == false			 
              }			 
		   end
		  
		   local 牛肉数量 = 0
           local 羊肉数量 = 0
           local 猪肉数量 = 0
           local 鸭肉数量 = 0
		   local 美味调料数量 = 0
           local 普通调料数量 = 0


         for n = 1,80 do
			if 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "新鲜牛肉" then
			   牛肉数量 = 牛肉数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			 elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "新鲜羊肉" then
			   羊肉数量 = 羊肉数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			  elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "新鲜猪肉" then
			   猪肉数量 = 猪肉数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			  elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "新鲜鸭肉" then
			   鸭肉数量 = 鸭肉数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			   elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "美味调料" then
			   美味调料数量 = 美味调料数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			    elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "普通调料" then
			   普通调料数量 = 普通调料数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			end
		   end
		  

			 烧烤数据[id].牛肉数量 = 牛肉数量
			 烧烤数据[id].羊肉数量 = 羊肉数量
			 烧烤数据[id].猪肉数量 = 猪肉数量
			 烧烤数据[id].鸭肉数量 = 鸭肉数量
		     烧烤数据[id].美味调料数量 =  美味调料数量
			 烧烤数据[id].普通调料数量 =  普通调料数量

	
	
		  --return 烧烤数据[id]
end


function 烧烤派对:扣除烧烤材料(id,阶段,内容)
 
		local 临时名称 = 分割文本(内容, "-")
		local 找到物品 = false
        local 特赦格子 = 0
        local 找到物品1 = false
        local 特赦格子1 = 0	
     

		
		  for n = 1,80 do
			if 玩家数据[id].角色.道具["包裹"][n] ~= nil and 找到物品 == false and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == 临时名称[1] then	
               找到物品 = true
               特赦格子=n
			 elseif  玩家数据[id].角色.道具["包裹"][n] ~= nil and 找到物品1 == false and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == 临时名称[2] then	
               找到物品1 = true
               特赦格子1=n
             end  
		  end
     
          if 找到物品 == false then
              发送数据(玩家数据[id].连接id, 7,"#Y/食材数量不足")
	     	  return
         elseif 找到物品1 == false then
              发送数据(玩家数据[id].连接id, 7,"#Y/调料数量不足")
	     	  return
          elseif 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][特赦格子]].数量 < 1 then  
               发送数据(玩家数据[id].连接id, 7, "#Y/食材数量不足")
	     	    return
	       elseif 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][特赦格子1]].数量 < 1 then  
               发送数据(玩家数据[id].连接id, 7, "#Y/调料数量不足")
	     	    return
          else
             道具处理类:RemoveItems(玩家数据[id],特赦格子,临时名称[1],1)
	     	 道具处理类:RemoveItems(玩家数据[id],特赦格子1,临时名称[2],1)
			-- 发送数据(玩家数据[id].连接id, 3006, "66")
			 
		local 牛肉数量 = 0
        local 羊肉数量 = 0
        local 猪肉数量 = 0
        local 鸭肉数量 = 0
		local 美味调料数量 = 0
        local 普通调料数量 = 0
          for n = 1,80 do
			if 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "新鲜牛肉" then
			   牛肉数量 = 牛肉数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			 elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "新鲜羊肉" then
			   羊肉数量 = 羊肉数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			  elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "新鲜猪肉" then
			   猪肉数量 = 猪肉数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			  elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "新鲜鸭肉" then
			   鸭肉数量 = 鸭肉数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			   elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "美味调料" then
			   美味调料数量 = 美味调料数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			  elseif 玩家数据[id].角色.道具["包裹"][n] ~= nil and 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].名称 == "普通调料" then
			   普通调料数量 = 普通调料数量 + 玩家数据[id].物品[玩家数据[id].角色.道具["包裹"][n]].数量
			end
		   end
		  if 烧烤数据[id]==nil then 
		     烧烤数据[id]= {
			 加肉= "未加肉",
			 加料= "未加料",
			 牛肉数量 = 牛肉数量,
			 羊肉数量 = 羊肉数量,
			 猪肉数量 = 猪肉数量,
			 鸭肉数量 = 鸭肉数量,
			 美味调料数量 =  美味调料数量,
			 普通调料数量 =  普通调料数量,
			 烧烤阶段 = 0,
			 品质= 0,
			 野凤凰 == false,
			 野凤凰奖励 == false		
			 }
		  end
		  
		     烧烤数据[id].加肉= 临时名称[1]
			 烧烤数据[id].加料= 临时名称[2]
			 烧烤数据[id].牛肉数量 = 牛肉数量
			 烧烤数据[id].羊肉数量 = 羊肉数量
			 烧烤数据[id].猪肉数量 = 猪肉数量
			 烧烤数据[id].鸭肉数量 = 鸭肉数量
			 烧烤数据[id].美味调料数量 =  美味调料数量
			 烧烤数据[id].普通调料数量 =  普通调料数量
			 烧烤数据[id].烧烤阶段 = 阶段 
            self:烧烤奖励(玩家数据[id],10)
            发送数据(玩家数据[id].连接id,200699,烧烤数据[id])
			
     end 

end


function 烧烤派对:取烧烤阶段()

          

         if os.time() >= 任务数据[self.临时id5].起始  and os.time() < 任务数据[self.临时id5].第一次[1]  then     ---第一轮加料
		   return 1
		 elseif os.time() >= 任务数据[self.临时id5].第一次[1]  and os.time() < 任务数据[self.临时id5].第一次[2]    then---第一轮烧烤
           return 2
		 elseif os.time() >= 任务数据[self.临时id5].第一次[2]  and os.time() < 任务数据[self.临时id5].第二次[1]    then---第二轮加料
		   return 3
		 elseif os.time() >= 任务数据[self.临时id5].第二次[1]  and os.time() < 任务数据[self.临时id5].第二次[2]    then---第二轮烧烤
		   return 4
		 elseif os.time() >= 任务数据[self.临时id5].第二次[2]  and os.time() < 任务数据[self.临时id5].第三次[1]    then---第三轮加料
		   return 5
		 elseif os.time() >= 任务数据[self.临时id5].第三次[1]  and os.time() < 任务数据[self.临时id5].第三次[2]    then---第三轮烧烤
           return 6
		 elseif os.time() >= 任务数据[self.临时id5].第三次[2]  and os.time() < 任务数据[self.临时id5].第三次[2] +  300  then---烧烤结束5分钟内 
		   return 7
		  else 
		   return 0
	    end
end

function 烧烤派对:取烧烤任务id() --if 任务数据[烧烤派对:取烧烤任务id()]~=nil and 烧烤派对开关  then

return self.临时id5

end

function 烧烤派对:打开个人烧烤信息(id)

       if 任务数据[self.临时id5]~=nil and 烧烤派对开关  then
		 
		 --任务数据[任务id]
		 self:刷新烧烤数据(id,self:取烧烤阶段())
		 if self:取烧烤阶段() ~= 0  and  烧烤数据[id].烧烤阶段 ~= 0 and 烧烤数据[id].加肉~="未加肉"  and 烧烤数据[id].加料~="未加料"  then
		   if (烧烤数据[id].烧烤阶段 == 1 and self:取烧烤阶段()>=3) or 
		   (烧烤数据[id].烧烤阶段 == 2 and self:取烧烤阶段()>=3) or 
		   (烧烤数据[id].烧烤阶段 == 3 and self:取烧烤阶段()>=5) or 
		   (烧烤数据[id].烧烤阶段 == 4 and self:取烧烤阶段()>=5) or
		   (烧烤数据[id].烧烤阶段 == 5 and self:取烧烤阶段()>=7) or
		   (烧烤数据[id].烧烤阶段 == 6 and self:取烧烤阶段()>=7) 
		   
		   then
		     local cj = ""
		   
             if 烧烤数据[id].加肉 =="新鲜牛肉"  then  
			   烧烤数据[id].品质 = 烧烤数据[id].品质 + math.random(50,60)
			   cj = "烧烤牛肉"
			   elseif  烧烤数据[id].加肉 =="新鲜羊肉"  then  
			   烧烤数据[id].品质 = 烧烤数据[id].品质 + math.random(40,50)
			   cj = "烧烤羊肉"
			   elseif  烧烤数据[id].加肉 =="新鲜猪肉"  then  
			   烧烤数据[id].品质 = 烧烤数据[id].品质 + math.random(30,45)
			   cj = "烧烤猪肉"
			   elseif  烧烤数据[id].加肉 =="新鲜鸭肉"  then  
			   烧烤数据[id].品质 = 烧烤数据[id].品质 + math.random(25,40)
			   cj = "烧烤鸭肉"
			 end
			 if 烧烤数据[id].加料 =="美味调料"  then  
			   烧烤数据[id].品质 = 烧烤数据[id].品质 + math.random(5,7)
			  elseif  烧烤数据[id].加料 =="普通调料"  then  
			   烧烤数据[id].品质 = 烧烤数据[id].品质 + math.random(2,5)
			   end
			   

		    if cj ~= ""  then
               道具处理类:给予道具(id,cj,烧烤数据[id].品质)
			 end 
			 
			-- 发送数据(玩家数据[id].连接id, 7,"#Y/恭喜你获得了#R/"..烧烤数据[id].加肉)
			 烧烤数据[id].加肉="未加肉"
		     烧烤数据[id].加料="未加料"
		     烧烤数据[id].烧烤阶段 = 0
			 烧烤数据[id].品质 = 0
			 self:烧烤奖励(玩家数据[id],10)
			 
		   end
		 end		  	  
		 
		 发送数据(玩家数据[id].连接id,200688,烧烤数据[id])
	   else 
		发送数据(玩家数据[id].连接id, 7,"#Y/烧烤活动已结束。")
	   end
   
end


function 烧烤派对:烧烤奖励(user,倍率)

		--print(Item.品质)
		local  临时倍率 = 倍率
		
		角色处理类:添加经验(user,临时倍率*400000,"烧烤派对")
		角色处理类:添加银子(user,math.random(4,临时倍率)*5000,"烧烤派对") 
		角色处理类:添加储备(user,math.random(4,临时倍率)*40000,"烧烤派对")
		角色处理类:添加威望积分(user,math.floor(临时倍率/2))
		
		
		if math.random(200) <= 临时倍率-3  then
          local cj = ""		
		  local 奖励参数 = math.random(100)
		  
		 if 奖励参数 <= 10 then
		 cj = ""
         道具处理类:给予道具(user.id,"高级魔兽要诀",nil,取高级兽诀名称())
         发送数据(user.连接id,7,"#Y/恭喜你获得了#R/高级魔兽要诀")
		  广播消息( "#hd/".."#S/(烧烤派对)".."#R/ "..user.角色.名称.."#Y/在烧烤派对活动中，获得了#g/高级魔兽要诀")		 
         elseif 奖励参数 <= 20 then
		 local 随机名称 ="上古锻造图策"
         local 随机等级 = math.floor(user.角色.等级/10)*10+5
         道具处理类:给予道具(user.id, 随机名称, 随机等级)
          发送数据(user.连接id,7,"#Y/恭喜你获得了#R/上古锻造图策")		 
         广播消息( "#hd/".."#S/(烧烤派对)".."#G/".. user.角色.名称.. "#y/在烧烤派对活动中，获得了#g/"..随机名称.."#"..math.random(110))	
         elseif 奖励参数 <= 30 then
		 cj = "修炼果"	
         elseif 奖励参数 <= 40 then
		 local 宝石等级 = math.random(1,12)
	      local 宝石名称 = 取随机宝石()
           道具处理类:给予道具(user.id,宝石名称,宝石等级)
	      发送数据(user.连接id, 7, "#y/恭喜你获得了"..宝石名称)	
	      广播消息( "#hd/".."#S/(烧烤派对)#Y/恭喜玩家#R/" .. user.角色.名称 .. "#y/在烧烤派对活动中,获得了奖励#R/"..宝石等级.."J"..宝石名称)	
         elseif 奖励参数 <= 50 then
		 cj = "灵饰洗炼石"	
         elseif 奖励参数 <= 60 then
		 cj = "宠物造型药水"	
         elseif 奖励参数 <= 70 then
		 cj = "仙玉200"	
   --       elseif 奖励参数 <= 80 then
		 -- cj = "元神突破丹"
         elseif 奖励参数 <= 90 then
		 cj = "银币礼包200W"	
         elseif 奖励参数 <= 98 then		 
		 cj = "三界密录"
         elseif 奖励参数 <= 100 then		 
		 cj = "摸金符"		 
		  end
		  
		   if cj ~= "" then 
		   道具处理类:给予道具(user.id,cj)
		   发送数据(user.连接id,7,"#Y/恭喜你获得了"..cj)
		   广播消息( "#hd/".."#S/(烧烤派对)".."#R/ "..user.角色.名称.."#Y/在烧烤派对活动中，获得了#g/"..cj)
		      if 是否聚宝盒(user.id) and math.random(100)<=50 then
			     道具处理类:给予道具(user.id,cj)
		         发送数据(user.连接id,7,"#Y/恭喜你获得了"..cj)
		          广播消息( "#hd/".."#S/(烧烤派对)(触发聚宝盒双倍)".."#R/ "..user.角色.名称.."#Y/在烧烤派对活动中，额外获得了#g/"..cj)
			  end
           end		  
		end	
end




return 烧烤派对